Docker را مثل یه کامیون حمل کانتینر تصور کن. هر کانتینر (Container) یه بار کوچک (برنامه) هست که همه چیز مورد نیازش (کتابخانهها، تنظیمات) رو با خودش داره. Docker این کانتینرها رو روی سیستم شما اجرا میکنه، بدون اینکه به بقیه سیستم کاری داشته باشه. توی این جلسه، یاد میگیری چطور این کامیون (Docker) رو روی سیستمت نصب کنی!
Docker یک پلتفرم متنباز برای اجرای برنامهها در کانتینرها است. کانتینرها مانند ماشینهای مجازی سبکوزن هستند که برنامه و تمام وابستگیهای آن را با هم打包 میکنند، اما برخلاف VMها، هسته سیستمعامل میزبان را به اشتراک میگذارند و بسیار سریعتر اجرا میشوند.
برای نصب Docker روی دبیان، به یکی از نسخههای زیر نیاز دارید[reference:0]:
قبل از نصب، بستههای غیررسمی Docker را حذف کنید تا با نسخه رسمی تداخل نکنند[reference:1]:
توضیح: این دستور بستههای قدیمی Docker را که ممکن است با نسخه رسمی تداخل داشته باشند، حذف میکند[reference:2].
docker.io، docker-compose، docker-doc و podman-docker هستند[reference:3].
توضیح: ca-certificates برای اعتبارسنجی گواهیها و curl برای دانلود کلید GPG استفاده میشود.
توضیح: کلید GPG برای تأیید صحت بستههای Docker استفاده میشود[reference:4].
توضیح: این دستور مخزن رسمی Docker را به لیست مخازن APT اضافه میکند[reference:5][reference:6].
https://download.docker.com/linux/debian
توضیح: این دستور Docker Engine و اجزای اصلی آن را نصب میکند[reference:7][reference:8].
docker-ce (موتور)، docker-ce-cli (خط فرمان)، containerd.io (اجرای کانتینرها)[reference:9].
توضیح: enable Docker را برای شروع خودکار در بوت فعال میکند و --now آن را بلافاصله راهاندازی میکند.
توضیح: این دستور یک کانتینر تست را دانلود و اجرا میکند. اگر پیام خوشآمدگویی را مشاهده کردید، نصب با موفقیت انجام شده است[reference:10][reference:11].
sudo docker run hello-world[reference:12]
Docker در مخازن پیشفرض AlmaLinux موجود نیست و باید از مخزن رسمی Docker نصب شود[reference:13].
اگر Podman یا Buildah نصب دارید، آنها را حذف کنید تا با Docker تداخل نداشته باشند[reference:14]:
توضیح: Podman و Buildah با Docker تداخل دارند و باید حذف شوند[reference:15][reference:16].
podman و buildah با Docker تداخل دارند و باید حذف شوند[reference:17].
توضیح: dnf-plugins-core برای استفاده از دستور config-manager لازم است[reference:18][reference:19].
از مخزن CentOS استفاده میشود زیرا الما با آن کاملاً سازگار است[reference:20]:
توضیح: این دستور مخزن رسمی Docker را به لیست مخازن DNF اضافه میکند[reference:21][reference:22].
https://download.docker.com/linux/centos/docker-ce.repo[reference:23]
توضیح: این دستور Docker Engine و اجزای اصلی آن را نصب میکند[reference:24][reference:25].
dnf به جای apt استفاده میشود. بستهها مشابه دبیان هستند.
توضیح: Docker را فعال کرده و بلافاصله راهاندازی میکند[reference:26].
توضیح: مانند دبیان، این دستور نصب را تأیید میکند[reference:27].
sudo docker run hello-world
برای اجرای دستورات Docker بدون نیاز به sudo، کاربر خود را به گروه docker اضافه کنید:
توضیح: usermod -aG کاربر فعلی را به گروه docker اضافه میکند[reference:28].
| مرحله | Debian | AlmaLinux |
|---|---|---|
| مدیر بسته | apt |
dnf |
| مخزن Docker | https://download.docker.com/linux/debian |
https://download.docker.com/linux/centos/docker-ce.repo |
| پیشنیاز | ca-certificates curl |
dnf-plugins-core |
| حذف بستههای متضاد | docker.io docker-compose docker-doc podman-docker |
podman buildah docker docker-common |
| نصب Docker | docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin |
docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin |
apt در دبیان، dnf در الما) و مخزن Docker است.
| دستور | توضیح |
|---|---|
sudo systemctl status docker |
بررسی وضعیت سرویس Docker |
sudo systemctl stop docker |
توقف سرویس Docker |
sudo systemctl start docker |
شروع سرویس Docker |
sudo systemctl restart docker |
راهاندازی مجدد Docker |
docker --version |
نمایش نسخه Docker |
docker info |
نمایش اطلاعات کامل Docker |
apt + مخزن .../debian + کلید GPGdnf + مخزن .../centos + dnf-plugins-coredocker-ce، docker-ce-cli، containerd.iodocker-buildx-plugin و docker-compose-pluginsudo docker run hello-worldsudo usermod -aG docker $USER